* !Switcher Model Name (ff ff dd dd) [dly] {rcv; pgm} "p, p, p", #i
*
* Lines preceded with an asterisk (*) are ignored when reading the file and may be used for comments.
*
* Manufacturer names are listed once only, with supported models appearing on the lines following
* the manufacturer's entry.
* Entries for manufacturers and models are limited to one line per manufacturer or model entry.
* Model names are preceded by a colon (:) for standard MIDI devices, or by an exclamation (!) for
* switchers (patch bays). Names without a preceding colon or exclamation are interpreted as
* manufacturer entries.
*
* PLEASE NOTE: At the time of shipping this version of FreeMIDI, switchers are not yet supported
* and have been temporarily commented out of this file.
*
* Information in parentheses identifies the manufacturer and model for a given device.
* This allows certain programs to recognize devices in your setup and configure them appropriately.
* These codes correspond to those used in response to the Universal Inquiry Message as per the
* MIDI 1.0 Detailed Specification.
* If this information is not provided, the manufacturer and model names are still available to your
* applications, but the devices may not be automatically identifiable by certain applications.
* mm = Manufacturer's System Exclusive ID code, which may include one or three MIDI bytes
* in hexadecimal format.
* ff = Device Family code, consisting of two MIDI bytes in hexadecimal format with the LSB
* appearing first.
* dd = Device Family Member code, consisting of two MIDI bytes in hexadecimal format with
* the LSB appearing first.
*
* For standard devices, information in brackets specifies the Device ID range for a device of the
* appropriate manufacturer and model. The expression [-] is used to signify that the Device ID (or
* receive channel) is not editable on the device. The default range is [1-16].
* idl = Minimum device ID available for this device (standard device only).
* idh = Maximum device ID available for this device (standard device only).
* For switchers, the number in brackets determines the delay (in milliseconds) to wait after changing
* the switcher's program. The default value is 50 ms.
* dly = Delay for switcher program change (switcher device only).
*
* For standard devices, information in braces identifies the receive and transmit channels for a device.
* The receive channels are separated from the transmit channels by a semicolon (;). To specify no
* receive or transmit channel, use a space character in place of a channel number. The default channels
* are {1-16; 1}.
* rcv = Identifies the receive channel(s) for a device.
* tx = Identifies the transmit channel(s) for a device (standard devices only).
* For switchers, the information in braces identifies the receive channels and the default program, which
* are separated by a semicolon (;). The receive channels are the range of channels on which the switcher
* responds to program change messages; the default value channels are 1-16. The default program
* identifies the switcher program which connects the Mac to all devices (preferably bi-directionally)
* connected to the switcher.
* rcv = Identifies the receive channel(s) for a device.
* pgm = Number (from 0 to 127 inclusive) of the switcher's default program (switchers only).
*
* Numbers in quotes specify properties associated with a device. Multiple properties can be listed as
* long as they are separated by commas (,), semicolons (;), spaces or tabs.
* Properties are useful for identifying groups of devices which have a common feature or trait, and to
* inform applications about the characteristics of a particular device.
* By default, devices have no properties.
* p = Number identifying a property for a device. This must identify one of the existing
* "standard" properties; user-defined properties cannot be assigned in this file.
*
* Currently defined properties are as follows (possible values are 1 - 32):
* 1. Controller
* 2. Receives Clock
* 3. Receives MTC
* 4. Transmits Clock
* 5. Transmits MTC
* 6. MIDI Machine
* 7. General MIDI
*
* set both 8 and 9, if unit requires both MSB and LSB for bank select
* 8. Bank Select is Controller 0
* 9. Bank Select is Controller 32
*** CPM 5/13/94 -- added new properties
* 10. Doesn't accept program changes
* 11. Doesn't play MIDI notes
* 12. Sampler
* 13. Drum Machine
* 14. Effects Unit
* 15. Mixer
*
* The number immediately following a pound sign (#) identifies the icon number to use when displaying
* a device of the appropriate manufacturer and model. By default this is #600, which is the first icon in
* the list of available icons. You may need to run your configuration software to view the available
* icons.
* i = resource id of the icon used when displaying the device.
*
* Note that any of these fields (except for the manufacturer and device family codes) are ultimately
* editable by the user in the configuration software. If any field is missing, the default values are used.
* As an example, the following describes a controller and a General MIDI sound module made by Midi Fiend.
* The device IDs for both may be between 1 and 16, since this information is provided with the
* manufacturer entry.
* Midi Fiend (00 00 7f) [1-16]
* :Fiend Controller (00 01 00 01) "1" {1; 1}
* :Fiend Sounder (00 02 00 01) {1-16, } "7" #603
* NOTE: Due to a lack of complete information at the time of shipping this version of FreeMIDI, some manufacturer and model ID bytes have been
* made up. This was to prevent devices with no manufacturer or model ID's from being identified wrong by FreeMIDI when the current configuration changed.
* _Made Up_ ID bytes will always have the high bit set and are therefore all greater than $7F. If you have more accurate information about any devices in this file,
* please send your corrections to the FreeMIDI Development Team, Mark of the Unicorn, Inc. 1280 Mass. Ave. Cambridge, MA 02138 or e-mail them to UNICORN@applelink.apple.com.